Communication apparatus and communication method

ABSTRACT

A data communication frame is formed by a preamble portion (PREAMBLE) for demodulation and synchronization, a frame information portion (FC) containing a data type of the frame, a frame length portion (FL), and a data body portion (DATABODY) composed of more than one data packet combined together. If a request to transmit a packet is made from an upper layer, a communication apparatus  10  concurrently performs a process of calculating a frame length the frame would have if combining of the packet is performed and a process of transmitting the preamble portion and the frame information portion. The frame length depends on packets, while the preamble portion and the frame information portion do not depend on packets.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a communication apparatus and acommunication method, and, more particularly, to a communicationapparatus and a communication method which employ a data communicationframe formed by combining a plurality of packets.

2. Description of the Background Art

In general, when incorporating packets (e.g., IP packets) provided froman upper layer or packets (e.g., ethernet frames) provided from anotherprotocol inside abridge into a frame in the Medium Access Control (MAC)layer of a data communication system, a header containing controlinformation, such as a destination address, a source address, a frametype, etc., is always assigned to the head of each packet. From theviewpoint of the upper layer, however, this header information isoverhead, and may be a factor for decreasing packet transmissionefficiency.

Methods for reducing overhead to reduce the decrease in the packettransmission efficiency are proposed in Japanese Laid-Open PatentPublication No. 7-123118 and Japanese Laid-Open Patent Publication No.2003-69642. In these methods, as illustrated in FIG. 13, headers (H1 toH4) specific to respective packets (P1 to P4) are not provided, butinstead, a plurality of packets are combined together and then a singleheader (H) is assigned to a group of packets (i.e., a frame) thusobtained.

When the above-described methods of combining a plurality of packets fortransmission are applied to a communication system which employs, as amedium, an air (wireless), a power line, or the like, the followingproblem arises. In communication systems which employ, as a medium, anair (wireless), a power line, or the like, it is difficult to accuratelygrasp whether another communication apparatus is currently transmittingdata, and it is impossible to determine the end of a frame. Therefore,for example, in the case where header portions are transmitted at a lowrate and data portions are transmitted in a highly efficient manner byemploying a modulation system (e.g., Discrete Multi Tone (DMT)) specificto communication apparatuses that communicate with each other, datacollision may occur.

One conceivable method to solve this problem is to write within a headera period of time required (or the number of symbols to be transmitted)for completing the transmission of a frame containing a plurality ofpackets, by adopting a conventional method of adding to a header portionthe information of a period of time (in microseconds) required (or thenumber of symbols to be transmitted) for completing the transmission ofa frame and thus reporting the information to a communication apparatuson the receiving end. This conventional method is disclosed in IEEE Std802.11, “Wireless LAN Medium Access Control (MAC) and Physical Layer(PHY) Specifications”.

In order to implement this method, it is necessary to calculate thetotal transmission time for a frame containing combined packets (or thetotal number of symbols to be transmitted) before transmitting theframe. However, it is impossible to calculate in advance the totaltransmission time for a frame (or the total number of symbols to betransmitted) in the case of a system in which an optimal value of amodulation parameter is dynamically selected for each pair ofcommunication apparatuses that communicate with each other in accordancewith transmission path fluctuation (e.g., a system that employs DMT inmulticarrier transmission, in which transmission path fluctuation isregularly examined, and each time transmission path fluctuation isexamined, an optimal modulation parameter is selected), and in the casewhere packets to be combined together may have various data lengths.

Therefore, it is necessary to repeatedly perform, when transmitting aframe, a process of obtaining a current modulation parameter and thedata length of a current packet stored in a buffer and, after adding thepacket to the frame, carrying out calculation with respect to combiningof packets. Therefore, as the number of packets to be combined togetherincreases, the time required for calculating the total transmission time(or the total number of symbols to be transmitted) becomes longer. As aresult, the interval between the completion of the transmission of aframe and the start of the transmission of the next frame becomes long(i.e., the interframe gap becomes large). In other words, thetransmission efficiency of the communication system as a whole becomesreduced, despite the intention to improve the transmission efficiency bycombining packets.

In addition, in order to avoid conflict between a plurality ofcommunication apparatuses, an interframe gap specific to a system shouldbe set. At this time, the value of the interframe gap specific to thesystem should be the period of time required for completing calculationwith respect to the maximum number of packets that can be combinedtogether, even in the case where only a small number of packets areactually to be combined together. This is an inefficient operation.

SUMMARY OF THE INVENTION

Therefore, an object of the present invention is to provide acommunication apparatus and a communication method which enableefficient data transmission by allowing combining a plurality of packetstogether to be compatible with a small value of the interframe gapspecific to a system.

The present invention is directed to a communication apparatus forperforming communication by using a data communication frame formed froma plurality of portions, the portions being arranged in the order of apreamble portion for demodulation and synchronization, a frameinformation portion containing a data type of the frame, a frame lengthportion for indicating a length of the frame, and a data body portioncomposed of more than one data packet combined together. To achieve theobject above, the communication apparatus according to the presentinvention comprises a frame length calculation section, a communicationcontrol section, and a frame generation section.

Each time a request to transmit a data packet is made from an upperlayer, the frame length calculation section calculates a frame lengththe frame would have if combining of the data packet is performed. Thecommunication control section determines the number of data packets thatare to be combined together in the frame, based on a calculation by theframe length calculation section. The frame generation section generatesand transmits the preamble portion and the frame information portionconcurrently with calculation by the frame length calculation section,and, after the calculation by the frame length calculation section iscompleted, generates and transmits the frame length portion and the databody portion composed of the number of data packets combined together,the number having been determined by the communication control section.

Preferably, the frame generation section sets a length of the preambleportion so that the calculation by the frame length calculation sectionis completed before transmission of the preamble portion and the frameinformation portion is completed. Alternatively, the communicationcontrol section may set the number of data packets to be combinedtogether in the frame so that the calculation by the frame lengthcalculation section is completed before transmission of the preambleportion and the frame information portion is completed. Typically, theframe length is measured in the number of symbols or the length of time.Also, it may be so arranged that the frame information portion and theframe length portion have been subjected to modulation having a higherror tolerance or an error correcting coding.

A series of processes performed by the communication apparatus asdescribed above can be considered as a communication method. Thiscommunication method may be provided in the form of a program that iscapable of causing a computer to perform the series of processes. Thisprogram may be recorded on a computer-readable recording medium and thenthe program recorded on the medium may be introduced to the computer. Inaddition, functional blocks that form a part of the above-describedcommunication apparatus may be realized as an LSI, which is anintegrated circuit.

According to the present invention, a process of transmitting thepreamble portion and the frame information portion, which do not dependon packets, is performed concurrently with a process of calculating thelength of a frame composed of a plurality of packets combined together.Thus, improvement in transmission efficiency is achieved by combiningpackets while the value of an interframe gap is set low. Further, acommunication apparatus on the receiving end is capable of easilydetermining, from information in the frame length portion, a time periodrequired for completing reception of one frame composed of a pluralityof packets combined together. Therefore, it is made possible to avoidconflict with another communication apparatus by grasping usage statusof media in communication apparatuses that are currently communicatingwith each other.

These and other objects, features, aspects and advantages of the presentinvention will become more apparent from the following detaileddescription of the present invention when taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a structure of a communicationapparatus 10 according to an embodiment of the present invention;

FIG. 2 is a diagram illustrating an exemplary data structure in a databuffer section 15;

FIG. 3 is a diagram illustrating an exemplary structure of a datacommunication frame which is generated in a frame generation section 14;

FIG. 4 is a flowchart illustrating a processing procedure of acommunication method according to an embodiment of the presentinvention;

FIG. 5 and FIG. 6 are diagrams for explaining transmission time allowedfor one frame;

FIG. 7 is a diagram for explaining a conventional communication method;

FIG. 8 to FIG. 10 are diagrams for explaining exemplary communicationmethods according to an embodiment of the present invention;

FIG. 11 is a flowchart illustrating another processing procedure of thecommunication method according to an embodiment of the presentinvention;

FIG. 12 is a diagram illustrating an exemplary configuration of anetwork system for high-speed power line communication to which thepresent invention is applied; and FIG. 13 is a diagram for explaining aconventional method for reducing decrease in packet transmissionefficiency.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Hereinafter, an embodiment of the present invention will be describedwith reference to the accompanying drawings.

FIG. 1 is a block diagram illustrating a structure of a communicationapparatus 10 according to an embodiment of the present invention. InFIG. 1, the communication apparatus 10 according to the presentinvention includes a frame length calculation section 12, acommunication control section 13, a frame generation section 14, and adata buffer section 15.

The data buffer section 15 stores a packet the transmission of which hasbeen requested from an upper layer (not shown) according to a datastructure described later. Once a packet is stored in the data buffersection 15, the communication control section 13 acquires information ofthe packet and passes the information to the frame length calculationsection 12 together with other information such as a transmission rate,etc. The communication control section 13 also determines whetherpacket-combining is possible based on a calculation result received fromthe frame length calculation section 12. According to the informationpassed from the communication control section 13, the frame lengthcalculation section 12 calculates transmission time required fortransmitting the packet (or the number of symbols to be transmitted).According to an instruction from the communication control section 13,the frame generation section 14 performs combining of packets stored inthe data buffer section 15 and the transmission of a data communicationframe obtained by combining the packets.

FIG. 2 is a diagram illustrating an exemplary data structure in the databuffer section 15. In FIG. 2, the data buffer section 15 is providedwith dedicated packet storage blocks 151 which are prepared with respectto each destination of packets or each packet type. In each packetstorage block 151, a packet the transmission of which has been requestedfrom the upper layer is stored, such that a primitive and a packet bodythereof are stored separately. A primitive 152 contains the data type ofa packet (e.g., an identifier for identifying whether the packet is acontrol packet or a data packet), the data length (the number of bytes)of the packet, a sequence number, and other data information. The packetbody is data itself.

FIG. 3 is a diagram illustrating an exemplary structure of a datacommunication frame generated by the frame generation section 14. InFIG. 3, a frame is formed by a preamble portion (PREAMBLE) 31, a frameinformation portion (FC) 32, a frame length portion (FL) 33, and a databody portion (DATABODY) 34, which are arranged in this order. The databody portion 34 is formed by combining a first to nth block portions 341to 34 n, where the variable n is a natural number, and does not need tobe a value specific to a system but may be flexibly varied in accordancewith a prescribed frame transmission time or a frame type. Each of thefirst to nth block portions 341 to 34 n is formed by a block controlinformation portion (CB) 35, a packet body portion (PB) 36, an errordetection portion (FCS) 37, and a synchronization word portion (MARK)38.

In the preamble portion 31, a data sequence having a fixed pattern isstored which is used for synchronization and demodulation (e.g., carrierdetection, clock recovery, etc.) performed by a communication apparatuson the receiving end. In the frame information portion 32, controlinformation, such as a source address, a destination address, a networkID, a data type, etc., is stored. The frame information portion 32 hasbeen subjected to low-rate modulation which allows the frame to bereceived by all communication apparatuses and error correcting codingthat has a high error correction capability. The values of the preambleportion 31 and the frame information portion 32 are fixed values whichdo not depend on the packets provided from the upper layer. In the framelength portion 33, the transmission time required for transmitting thewhole blocks which are combined together (or the number of symbols to betransmitted) is stored. The transmission time (or the number of symbolsto be transmitted) is calculated by a frame length calculation processdescribed later. The frame length portion 33 also has been subjected tolow-rate modulation which allows the frame to be received by allcommunication apparatuses and error correcting coding that has a higherror correction capability. It is to be appreciated that the methods ofmodulation and error correcting coding applied to the frame informationportion 32 and the frame length portion 33 need not be the same betweenthe frame information portion 32 and the frame length portion 33. Thevalues of the frame length portion 33 and the data body portion 34 arevariable values which depend on the packets provided from the upperlayer. Therefore, the values should be calculated before transmission.

The block control information portion 35 stores: a sequence number usedfor detecting a packet loss or duplication; a block number, which is thenumber of the block being combined; the data length (the number ofbytes) of the packet; a life time for taking account of a prescriptionof packet delay time; control information related to the packet bodyportion 36; an error-detecting code (e.g., a Cyclic Redundancy Check(CRC)) for detecting an error in the block control information portion35; and so on. In the packet body portion 36, a data packet thetransmission of which has been requested from the upper layer is stored.For example, an ethernet frame may be stored in the packet body portion36. The error detection portion 37 detects an error in the packet bodyportion 36, and is, for example, a 32-bit CRC or the like. Thesynchronization word portion 38 indicates completion of the transmissionof the block, and is, for example, an identifier composed of fixed 16bytes, in which 0x00data is 12 bytes and 0xAA data is 4 bytes.

Next, further referring to FIG. 4, a process performed by thecommunication apparatus 10 according to an embodiment of the presentinvention will be described. FIG. 4 is a flowchart illustrating aprocessing procedure of a communication method according to anembodiment of the present invention.

A communication process of the present invention starts once thecommunication control section 13 detects that a first packet that is tobe subjected to a transmission process has been stored in the databuffer section 15 (step S401). Once the communication process starts,the communication control section 13 acquires the data length of thefirst packet from the primitive 152 of the data buffer section 15, andissues to the frame length calculation section 12 a calculation requesttogether with information of the data length, a transmission rate, andthe like.

Upon receiving the calculation request, the frame length calculationsection 12 calculates the total number of bytes of the data body portion34, while taking account of the data length of the first packet andoverhead such as the block control information portion 35, the errordetection portion 37, the synchronization word portion 38, etc. Next,the frame length calculation section 12 calculates the transmission time(or the number of symbols to be transmitted) for the first block portion341 based on the calculated total number of bytes and the transmissionrate. Further, the frame length calculation section 12 adds, to thecalculated transmission time (or the number of symbols to betransmitted) for the first block portion 341, the transmission time (orthe number of symbols to be transmitted) for the preamble portion 31,the frame information portion 32, and the frame length portion 33,thereby deriving the total transmission time required (or the totalnumber of symbols to be transmitted) for completing the transmission ofthe frame (step S402). Then, the frame length calculation section 12reports to the communication control section 13 the total transmissiontime (or the total number of symbols to be transmitted) thus obtained.

Based on the total transmission time (or the total number of symbols tobe transmitted) reported from the frame length calculation section 12,the communication control section 13 determines whether the transmissionof this frame, i.e., the first packet, is possible (step S403).Specifically, the transmission of the frame is determined to be possibleif the total transmission time (or the total number of symbols to betransmitted) does not exceed a transmission time (or the number oftransmitted symbols) allowed for one frame, whereas the transmission ofthe frame is determined to be impossible if the total transmission time(or the total number of symbols to be transmitted) exceeds thetransmission time (or the number of transmitted symbols) allowed for oneframe. The term “total transmission time allowed for one frame” usedherein is defined in the following manner.

In the case of a communication system in which beacons 51 aretransmitted in a fixed cycle T1, “total transmission time allowed forone frame” means a period of time t1 between a current time and thestart of the transmission of the next beacon (see FIG. 5). In the caseof a communication system in which time division is applied and anassigned band is T2, “total transmission time allowed for one frame”means a period of time t2 between a current time and a time at which theassigned band ends (see FIG. 6).

If the communication control section 13 determines in step S403 that thetransmission of the frame is impossible, the communication controlsection 13 terminates this process (step S410). If communication controlsection 13 determines in step S403 that the transmission of the frame ispossible, the communication control section 13 issues to the framegeneration section 14 a request to transmit the preamble portion 31.Upon receiving this request, the frame generation section 14 generatesthe preamble portion 31 and starts transmitting the preamble portion 31(step S404). Further, the communication control section 13 obtains thedata type of the first packet from the primitive 152 of the data buffersection 15 (step S405), determines from this data type whether the firstpacket is a kind of packet that is capable of being combined (stepS406). Specifically, a data packet is determined to be capable of beingcombined, and a control packet is determined to be incapable of beingcombined.

In addition, this data type is reported to the frame generation section14 and used to determine the length of the preamble portion 31 that isto be generated. For example, if the data type indicates that the firstpacket is a kind of packet that is capable of being combined, it isdetermined that the preamble portion 31 should be composed of 15symbols, whereas if the data type indicates that the first packet is akind of packet that is incapable of being combined, it is determinedthat the preamble portion 31 should be composed of 10 symbols. Also, inthe case where there is a desire to vary the maximum number of blocksthat can be combined together, if the data type indicates that themaximum number of blocks that can be combined together is set low, itmay be determined that the preamble portion 31 should be composed of 12symbols, whereas if the data type indicates that the maximum number ofblocks that can be combined together is set high, it may be determinedthat the preamble portion 31 should be composed of 15 symbols.

If block-combining is determined to be impossible in step S406, thecommunication control section 13 forwards to the frame generationsection 14 the total transmission time (or the total number of symbolsto be transmitted) received from the frame length calculation section12. The frame generation section 14 performs transmission based on aframe format as illustrated in FIG. 3 (step S411). It is to beappreciated that while these determinations are being made, the framegeneration section 14 continues to transmit the preamble portion 31. Onthe other hand, if block-combining is determined to be possible in stepS406, the communication control section 13 further determines whethercombining and transmission of the next packet is possible (step S407).In step S407, it is determined whether a packet that is yet to betransmitted has been newly stored in the data buffer section 15, and inthe case where such a packet is newly stored in the data buffer section15, it is determined whether the maximum number of packets that can becombined together has been reached.

If it is determined that combining and transmission of the next packet,i.e., a second packet, is possible, the communication control section 13obtains from the data buffer section 15 information as to the secondpacket, and issues to the frame length calculation section 12 a requestto calculate the frame length in the same manner as with the firstpacket. The frame length calculation section 12 calculates the totaltransmission time (or the total number of symbols to be transmitted) inthe case where the second packet is combined with the first packet, andreturns the calculation to the communication control section 13 (stepS408). Based on the calculation received from the frame lengthcalculation section 12, the communication control section 13 determinesonce again whether the combining and transmission of the second packetis possible (step S409).

If it is determined in step S409 that the combining and transmission ofthe second packet is impossible, the communication control section 13reports to the frame generation section 14 the transmission time (or thetotal number of symbols to be transmitted) in the case where only thefirst packet is transmitted, and requests the frame generation section14 to transmit the frame length portion 33 and the remaining part of theframe (step S411). On the other hand, if it is determined in step S409that the combining and transmission of the second packet is possible,the communication control section 13 repeatedly performs theabove-described processes of steps S407 to S409 with respect to a newpacket(s) that is yet to be transmitted, until combining andtransmission of any packet is determined to be impossible.

An effect of the above-described communication method will now bespecifically described with reference to FIG. 7 and FIG. 8. FIG. 7 is adiagram for explaining a conventional communication method. FIG. 8 is adiagram for explaining an exemplary communication method according to anembodiment of the present invention. In these examples, it is assumedthat time spent by a communication system to transmit one symbol is 8μseconds, that the length of a preamble portion is 10 symbols (=80μseconds), and that the length of the frame information portion is 8symbols (=64μ seconds). Also, it is assumed that a time required forobtaining information as to a packet from the data buffer section 15 andperforming a series of combining-related calculations with respect tothe packet to calculate the frame length is 5μ seconds. Also, it isassumed that a process of transmitting a frame is started at the timewhen the transmission or reception of the immediately previous frame iscompleted. Also, it is assumed that the maximum number of packets thatcan be combined together is n.

In the conventional communication method illustrated in FIG. 7, themaximum time that can elapse between the start of the transmissionprocess and the determination of the number of symbols that are to betransmitted corresponds to a time required for completing a process ofcalculating the frame length in the case where n packets are combined,i.e., n×5μ seconds. In conventional communication apparatuses,transmission of the preamble portion and the frame information portionstarts after the process of calculating the frame length is completed;therefore, a communication system for such conventional communicationapparatuses requires the interframe gap to be set equal to or largerthan n×5μ seconds.

On the other hand, in the communication method according to the presentinvention illustrated in FIG. 8, a process of transmitting the preambleportion and the frame information portion, which do not depend onpackets, is performed concurrently with a process of calculating theframe length. Therefore, the interframe gap can be set independent ofthe time required for completing the frame length calculation process.Specifically, a time required for performing the processes of steps S401to S404 of FIG. 4, i.e., a time required for performing the calculationprocess with respect to one packet (approximately 10μ seconds), or alittle longer suffices for the interframe gap. Therefore, the interframegap can be determined in view of another factor, such as a time it takesto detect a carrier since the start of the transmission of a frame, orthe like.

In the case where a large number of packets are combined together, thetime required for the frame length calculation process may be equal toor longer than the time required for the transmission of the preambleportion and the frame information portion. In the example of FIG. 8described above, the time required for the transmission of the preambleportion and the frame information portion is assumed to be 144(=80+64)μseconds; therefore, if the number of packets to be combined together isequal to or greater than 29, the time required for the frame lengthcalculation process is equal to or longer than 145 (=29×5)μ seconds,which means that the time required for the frame length calculationprocess is longer than the time required for the transmission of thepreamble portion and the frame information portion. In order to copewith such a situation, the following two techniques are proposed in thecommunication method of the present invention.

[First Technique]

In a first technique, in order to avoid the situation where the framelength calculation process has not been completed when the transmissionof the frame length portion starts, the transmission time for thepreamble portion is set so long that a time period from the start of thetransmission of the preamble portion to the completion of thetransmission of the frame information portion becomes equal to or longerthan a time period required for calculating the frame length in the casewhere the frame is composed of n packets (i.e., the maximum number ofpackets that can be combined). FIG. 9 illustrates the case where themaximum number n of packets that can be combined is set to 32 (i.e., thetime period required for calculating the frame length is 160μ seconds)and the time period from the start of the transmission of the preambleportion to the completion of the transmission of the frame informationportion is set to 184μ seconds (=120μ seconds (for the preambleportion)+64μ seconds (for the frame information portion)). Although thepreamble portion is lengthened, the transmission efficiency with respectto one frame is improved as compared with the conventional case wherethe interframe gap is set large (e.g., 160μ seconds). It is to beappreciated that because the preamble portion is employed for clockrecovery and carrier detection, longer preamble portions may result inimprovement in precision and thus the packet error rate may be improved.Needless to say, in the case of a control packet, which does not requirepacket-combining, the preamble portion can be made as short as possibleto improve the transmission efficiency.

[Second Technique]

In a second technique, in order to avoid the situation where the framelength calculation process has not been completed when the transmissionof the frame length portion starts, the maximum number n of packets thatcan be combined is limited so that the time period for the frame lengthcalculation process required for combining packets does not exceed thetime period from the start of the transmission of the preamble portionto the completion of the transmission of the frame information portion.FIG. 10 illustrates the case where the maximum number n of packets thatcan be combined is limited to 28 so that the frame length calculationprocess will be completed within 144μ seconds.

FIG. 11 is a flowchart illustrating a processing procedure of thecommunication method based on the second technique above. The flowchartof FIG. 11 is identical to the flowchart of FIG. 4 except that thefollowing processes are added. If it is determined in step S406 that thefirst packet is a kind of packet that is capable of being combined, itis determined whether a time period from the start of the transmissionof the preamble portion to the completion of the transmission of theframe information portion has passed (step S1101). This time period isdetermined considering the time (=5μ seconds) required for completingcalculation with respect to packet-combining of one packet in thecalculation of the frame length. If it is determined in step S1101 thatthe time period has not passed, the relevant processes which have beendescribed earlier with reference to FIG. 4 are performed. If it isdetermined in step S1101 that the time period has passed, the process issuspended until the transmission of the remaining part of the preambleportion and frame information portion is completed (step S1102), andthen transmission of the frame length portion and the remaining part ofthe frame is requested (step S411).

As described above, in the communication apparatus and the communicationmethod according to an embodiment of the present invention, a process oftransmitting the preamble portion and the frame information portion,which do not depend on packets, is performed concurrently with a processof calculating the length of a frame composed of a plurality of packetscombined together. Thus, improvement in transmission efficiency isachieved by combining packets while the value of the interframe gap isset low. In addition, the communication apparatus on the receiving endis capable of easily determining, from information in the frame lengthportion, a time period required for completing reception of one framecomposed of a plurality of packets combined together. Therefore, it ismade possible to avoid conflict with another communication apparatus bygrasping usage status of media in communication apparatuses that arecurrently communicating with each other.

It is to be appreciated that the above-described embodiment can also berealized by causing a CPU to execute a program which is capable ofcausing the CPU to execute the above-described processing procedures andstored in a storage device (e.g., a ROM, a RAM, a hard disk, etc.). Inthis case, the program may first be stored within the storage device viaa recording medium and thereafter executed, or may be directly executedfrom the recording medium. The term “recording medium” used hereinrefers to a semiconductor memory (e.g., a ROM, a RAM, a flash memory,etc.), a magnetic disk memory (e.g., a flexible disk, a hard disk,etc.), an optical disk (e.g., a CD-ROM, a DVD, a BD, etc.), or otherrecording medium such as a memory card. It is to be appreciated that the“recording medium” also includes conceptually a communication medium,such as a telephone line, a carrier channel, or the like.

Each functional block indicated by a broken line in FIG. 1, i.e., theframe length calculation section 12, the communication control section13, and the frame generation section 14, may be realized in the form ofan LSI, which is an integrated circuit. Each of the functional blocksmay be individually realized as one chip, or some or all of thefunctional blocks may be realized as one chip. Although as such anintegrated circuit, only an LSI is mentioned above, the integratedcircuit may be referred to as an IC, a system LSI, a super LSI, or anultra LSI depending on the degree of integration.

The method for realizing circuit integration is not limited to use of anLSI. Circuit integration may be realized by use of a dedicated circuitor a general purpose processor. Alternatively, a Field Programmable GateArray (FPGA), which is capable of being programmed after production ofan LSI, may be used, or a reconfigurable processor, which allows theconnection or setting of circuit cells inside an LSI to be reconfiguredafter production of the LSI, may be used. Further, if the progress ofthe semiconductor technology or another derivative technology produces anew circuit integration technology which replaces LSIs, such a circuitintegration technology may naturally be employed for the integration ofthe functional blocks. For example, such a circuit integrationtechnology may be produced by the application of biotechnology.

Hereinafter, the above-described embodiment of the present inventionwill be described with respect to an exemplary case where the embodimentis applied to a high-speed power line transmission network system. Inthis system, a signal interface (e.g., an interface of IEEE1394, a USBinterface, etc.) provided in a multimedia device (e.g., a personalcomputer, a DVD recorder, a digital television, a home server system, orthe like) is connected to a power line via an adapter that has thefunctions of the present invention. Thus, a network system is configuredthat employs as a medium a power line which is capable of transmittingdigital data such as multimedia data or the like at high speeds. Thissystem does not require a network cable to be newly laid as in the caseof a conventional wired LAN, and can be realized by employing as anetwork channel a power line as it is, which is already provided at ahouse, an office, or the like. Therefore, this system is very convenientin terms of cost and easiness of installation.

In the example above, the adaptor is used to convert a signal interfaceof an existing multimedia device into an interface for power linecommunication, whereby the existing device is applied to power linecommunication. However, multimedia devices will come to have thefunctions of the present invention in the future, so that datatransmission between the multimedia devices via power codes of thedevices will become possible. In this case, as illustrated in FIG. 12,because the need for an adaptor, an IEEE1394 cable, or a USB cable iseliminated, the arrangement of wires is made simpler. In addition, sincethe connection to the Internet via a router or the connection to awired/wireless LAN via a hub or the like is available, the high-speedpower line transmission system according to the present invention can beused to extend a LAN system. Further, since communication data is passedthrough a power line in a power line transmission system, the systemdoes not produce the problem of data leakage because of interception ofradio waves, which may occur in a wireless LAN. Thus, the power linetransmission system is also effective in security terms, e.g., in dataprotection. Needless to say, data which is passed through the power lineis protected by means of, e.g., IPSec in an IP protocol, encryption ofcontents themselves, other DRM systems, or the like.

While the invention has been described in detail, the foregoingdescription is in all aspects illustrative and not restrictive. It isunderstood that numerous other modifications and variations can bedevised without departing from the scope of the invention.

1. A communication apparatus for performing communication by using adata communication frame formed from a plurality of portions, theportions being arranged in an order of a preamble portion fordemodulation and synchronization, a frame information portion containinga data type of the frame, a frame length portion for indicating a lengthof the frame, and a data body portion composed of more than one datapacket combined together, the communication apparatus comprising: aframe length calculation section operable to, each time a request totransmit a data packet is made from an upper layer, calculate a framelength the frame would have if combining of the data packet isperformed; a communication control section operable to determine anumber of data packets that are to be combined together in the framebased on a calculation by the frame length calculation section; and aframe generation section operable to generate and transmitting thepreamble portion and the frame information portion concurrently withcalculation by the frame length calculation section, and, after thecalculation by the frame length calculation section is completed,generating and transmitting the frame length portion and the data bodyportion composed of the number of data packets combined together, thenumber having been determined by the communication control section. 2.The communication apparatus according to claim 1, wherein the framegeneration section sets a length of the preamble portion so that thecalculation by the frame length calculation section is completed beforetransmission of the preamble portion and the frame information portionis completed.
 3. The communication apparatus according to claim 1,wherein the communication control section sets the number of datapackets to be combined together in the frame so that the calculation bythe frame length calculation section is completed before transmission ofthe preamble portion and the frame information portion is completed. 4.The communication apparatus according to claim 1, wherein the framelength is measured in a number of symbols or a length of time.
 5. Thecommunication apparatus according to claim 1, wherein the frameinformation portion and the frame length portion have been subjected tomodulation having a high error tolerance or an error correcting coding.6. A communication method for performing communication by using a datacommunication frame formed from a plurality of portions, the portionsbeing arranged in an order of a preamble portion for demodulation andsynchronization, a frame information portion containing a data type ofthe frame, a frame length portion for indicating a length of the frame,and a data body portion composed of more than one data packet combinedtogether, the method comprising: each time a request to transmit a datapacket is made from an upper layer, calculating a frame length the framewould have if combining of the data packet is performed; determining anumber of data packets that are to be combined together in the framebased on a calculation by the calculating; generating and transmittingthe preamble portion and the frame information portion concurrently withcalculation by the calculating; and after the calculation by thecalculating is completed, generating and transmitting the frame lengthportion and the data body portion composed of the number of data packetscombined together, the number having been determined by the determining.7. An integrated circuit for use in a communication apparatus forperforming communication by using a data communication frame formed froma plurality of portions, the portions being arranged in an order of apreamble portion for demodulation and synchronization, a frameinformation portion containing a data type of the frame, a frame lengthportion for indicating a length of the frame, and a data body portioncomposed of more than one data packet combined together, the integratedcircuit having integrated therein circuits that function respectivelyas: a frame length calculation section operable to, each time a requestto transmit a data packet is made from an upper layer, calculate a framelength the frame would have if combining of the data packet isperformed; a communication control section operable to determine anumber of data packets that are to be combined together in the framebased on a calculation by the frame length calculation section; and aframe generation section operable to generate and transmitting thepreamble portion and the frame information portion concurrently withcalculation by the frame length calculation section, and, after thecalculation by the frame length calculation section is completed,generating and transmitting the frame length portion and the data bodyportion composed of the number of data packets combined together, thenumber having been determined by the communication control section.